/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package edu.upn.sigeadmi.cxc.beans;

import edu.upn.sigeadmi.cxc.bc.CuentaPendientePagoDelegate;
import edu.upn.sigeadmi.cxc.be.CuentaPendientePago;
import edu.upn.sigeadmi.cxc.be.LetraPendientePago;

//import edu.upn.sigeadmi.cxc.util.JasperReportUtil;
import edu.upn.sigeadmi.cxc.util.JasperReportUtil;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
// agregado por daniel


import javax.annotation.Resource;// Import

import javax.sql.DataSource; // import


public class CuentaPendientePagoController  extends AbstractController {

    private CuentaPendientePago ctapendientepago;
    private CuentaPendientePagoDelegate delegado;
    private LetraPendientePago letraPendientePago;

  private int numeroLetras;
  private double  cantidad;

    public void setCantidad(double cantidad) {
        this.cantidad = cantidad;
    }

    public double getCantidad() {
        return cantidad;
    }

   

    public void setNumeroLetras(int numeroLetras) {
        this.numeroLetras = numeroLetras;
    }
    public int getNumeroLetras() {
        return numeroLetras;
    }



    public CuentaPendientePagoController() {
        delegado = new CuentaPendientePagoDelegate();
    }

    public String nuevo(){
        //ctapendientepago = new CuentaPendientePago();
        return "Nuevo";

    }
    public String tasas(){

 //ctapendientepago = new CuentaPendientePago();
//letraPendientePagoController.setCuentPendientePago(ctapendientepago);
 return "Tasas";
    }
     public String regresar(){

        return "Regreso";
    }
public String volver(){
        ctapendientepago = new CuentaPendientePago();
        return "Volver";
    }
    public String registra(){
            try {
                delegado.crear(ctapendientepago);
                return "Volver";
            } catch (Exception e) {
                e.printStackTrace();
            }
            return "";
    }

    public String elimina(){
            try {
                delegado.borrar(ctapendientepago);
                return "Volver";
            } catch (Exception e) {
                e.printStackTrace();
            }
            return "";
    }

    public List<CuentaPendientePago> getCtaPendientepag(){
        try {
            return delegado.listar();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    } 

    @Resource(name="jdbc/sigeadmi")
    private DataSource ds;
// Cedeño
    public String ImprimirReporteDP(){
         try {
             Map parametros = new HashMap();
        //     IUController iu = (IUController) getBean("iu");
          //   parametros.put("usuario", iu.getLoginUsuario() + "@sigeadmi");
             JasperReportUtil jru = new JasperReportUtil();
             jru.setFileName("Reporte de Cuentas Pendientes");
             jru.setAttachment(true);
             jru.exportReport("cxc_ctaspendientes", "pdf", ds.getConnection());

         } catch (Exception e) {
         //    error(e);
         }
         return"";
     }
/*
            Map parametros = new HashMap();
            IUController iu = (IUController) getBean("iu");
            parametros.put("usuario", iu.getLoginUsuario() + "@sigeadmi");
            //parametros.put("SUBREPORT_DIR", "C:\\sigeadmi\\reportes");

            JasperReportUtil jru = new JasperReportUtil();
            jru.setFileName("Lista de Usuarios Por Grupo");
            jru.setAttachment(true);
            jru.exportReport("gen_usuariosporgrupo", "pdf", ds.getConnection(), parametros);
 * */

// Cedeño
    public String ImprimirICrediti(){
         try {
             Map parametros = new HashMap();
            // IUController iu = (IUController) getBean("iu");
            // parametros.put("usuario", iu.getLoginUsuario() + "@sigeadmi");
             JasperReportUtil jru = new JasperReportUtil();
             jru.setFileName("Reporte de Informe Crediticio de Clientes");
             jru.setAttachment(true);
            // jru.exportReport("cxc_icrediticio", "pdf", ds.getConnection(), parametros);
             jru.exportReport("cxc_icrediticio", "pdf", ds.getConnection());

         } catch (Exception e) {
          error(e);
         }
         return"";
     }





    public List<CuentaPendientePago> getFiltrarCuentaPendientes(){
    try {
        return delegado.getFiltraCuentaPendiente();
    } catch (Exception e) {
        e.printStackTrace();
    }
return null;
}

    public List<LetraPendientePago> getFiltrarLetrasCuentaPendientes(){
    try {
        return delegado.getFiltraLetraCuentaPendiente(ctapendientepago);
    } catch (Exception e) {
        e.printStackTrace();
    }
return null;
}

    


    public CuentaPendientePago getCtapendientepago() {
        return ctapendientepago;
    }

    public void setCtapendientepago(CuentaPendientePago ctapendientepago) {
        this.ctapendientepago = ctapendientepago;
    }

    public LetraPendientePago getLetraPendientePago() {
        return letraPendientePago;
    }

    public void setLetraPendientePago(LetraPendientePago letraPendientePago) {
        this.letraPendientePago = letraPendientePago;
    }

 public String insertar_Abono(){

        try {
              delegado.insertar_Abono(ctapendientepago,cantidad);
         return "volver";
        } catch (Exception e) {
        }
   return "";
    }
 


    public String insertar_letras(){

        try {
              delegado.insertar(ctapendientepago, numeroLetras);
         return "volver";
        } catch (Exception e) {
        }
   return "";
    }
}
